#pragma once
#include <iostream>
#include <string>

using namespace std;

class Console
{
public:
	Console()	
	{

	}
	virtual ~Console(){}
	enum ConsoleColor
	{
		Black         = 0,
		Blue          = 1,
		Green         = 2,
		Cyan          = 3,
		Red           = 4,
		Magenta       = 5,
		Brown         = 6,
		LightGray     = 7,
		DarkGray      = 8,
		LightBlue     = 9,
		LightGreen    = 10,
		LightCyan     = 11,
		LightRed      = 12,
		LightMagenta  = 13,
		Yellow        = 14,
		White         = 15
	};

	void Clear()
	{
		system("cls");
	}

	void Print(string str, ostream &out = cout)
	{
		out << str;
	}

	void Print(int num, ostream &out = cout)
	{
		out << num;
	}

	void Print(char c, ostream &out = cout)
	{
		out << c;
	}

	char Getch();
	void SetColor(int text, int background);
// 
// 	void SetStream(ostream out)
// 	{
// 		this->out = out;
// 	}

// 	ostream GetStream()
// 	{
// 		return out;
// 	}

private:
	//ostream out;
};